Browser, method, and computer program product for managing documents

ABSTRACT

A browser, method and computer program product for managing documents. The browser can receive and process a request from an input device of a image processing device. Based on this processing, the browser can transmit information over a network to a document manager connected to the scanning device via the network. The document manager can be connected, for example, to application service providers that store documents or to servers that deliver documents, such as e-mail servers and fax servers. The browser can receive information from the document manager. The information exchanged between the browser and the document manger can include, but is not limited to, documents, requests to retrieve documents, requests to store documents, requests to retrieve destination information (e.g., e-mail addresses and fax numbers), and search criteria.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application is a divisional application of U.S. Ser. No. 10/243,643 filed Sep. 16, 2002, the entire contents of which are incorporated herein by reference. This application claims priority to Provisional Application Ser. No. 60/374,811 filed Apr. 24, 2002, the entire content of which is hereby incorporated by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention is directed to browsers used in systems for managing documents or files. More particularly, the present invention allows a multi function device to interact with another device connected to the multi function device via a network.

2. Discussion of the Background

Browsers are already known. For example, Netscape's Communicator™ and Microsoft's Internet Explorer™ are known World Wide Web browsers that allow personal computers to interact with a Web server. Typically, a Web browser contacts a Web server and transmits a request for information. The Web server locates and then transmits the information to the Web browser, which displays the information. The information exchanged between the Web server and the Web browser can be in Hypertext Markup Language (HTML).

While these conventional browsers work well for personal computers, they are not designed to efficiently work with certain other devices. In particular, these conventional browsers may not work efficiently with multi-function devices that incorporate scanners, copy machines, printers, and/or fax machines.

SUMMARY OF THE INVENTION

The present inventors have determined that there is a need for a browser that can be efficiently incorporated in a device, such as a multi-function device (MFD), to allow a user to manage documents over a network. An MFD can incorporate a scanner, a copy machine, a printer, a fax machine, a digital camera, other office devices, and combinations thereof. One object of the present invention is to provide a browser that allows the user of an MFD to transmit and receive documents, requests, information to and from a document manger connected to the MFD via a network. The document manager can be a device connected to application service providers (ASPs) via a network and configured to manage documents between the ASPs and the MFD.

Another object of the present invention is to provide a browser that allows the user of an MFD to process a document and to e-mail, fax, or otherwise electronically deliver the processed document from the MFD. In this embodiment, the document manager is a scan server configured to manage documents and destination information (e.g., e-mail addresses and fax numbers) between the MFD and various servers (e.g., e-mail servers and fax servers).

These and other objects can be achieved by providing a browser configured to receive a request from an input device of the scanning device (e.g., the touch buttons displayed on a screen). The browser processes the request and transmits information based on the request over a network to the document manager connected to the canning device via the network. The browser is also configured to receive information from the document manager. The browser can be configured to display the information received from the document manager on the display of the MFD. The request received by the browser can include, but is not limited to, a request to retrieve a document, a request to store a document, and/or a request to retrieve destination information (e.g., e-mail addresses and fax numbers). The browser can transmit information to the document manager. That transmitted information includes, but is not limited to, login information related to the identity of the user of MFD, a search criterion for searching a document, a document (e.g., scanned by the MFD), and/or a search criterion for searching a destination information. The browser can receive information from the document manager. For example, the browser can receive a retrieved document, information about the storage of the document, and/or destination information. The browser can transmit data using an HTTP protocol and an XML format.

BRIEF DESCRIPTION OF THE DRAWINGS

A more complete appreciation of the invention and many of the attendant advantages thereof will be readily obtained as the same becomes better understood by reference to the following detailed description when considered in connection with the accompanying drawings, wherein:

FIG. 1 is a block diagram showing an overall system configuration according to a preferred embodiment of the present invention;

FIG. 2 is a block diagram illustrating a browser according to the preferred embodiment shown in FIG. 1;

FIG. 3 is a block diagram showing an overall system configuration according to another preferred embodiment of the present invention;

FIG. 4 is a block diagram illustrating a browser according to the preferred embodiment shown in FIG. 3;

FIGS. 5-8 show examples of menus displayed on a display screen of a scanning device according to a preferred embodiment;

FIGS. 9-10 show flowcharts of a method of managing documents from the scanning device according to one embodiment of the present invention;

FIG. 11 is a block diagram illustrating a scanning device according to one embodiment of the present invention;

FIG. 12 is a schematic representation of a scanning device according to one embodiment of the present invention; and

FIGS. 13-14 show flowcharts of a method of managing documents with an MFD browser according to one embodiment of the present invention.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Referring now to the drawings, wherein like reference numerals designate identical or corresponding parts throughout the several views, FIGS. 1 and 3 are block diagrams of systems 1 and 5 for managing documents according to the present invention. The systems 1 and 5 include a network 100 that interconnects at least one user device 20, but preferably a plurality of user devices 10, 20, 30 to a document manager 40. The user devices 10-30 include a browser (shown in FIGS. 2 and 4) configured to exchange data between the user devices 10-30 and the document manager 40.

In the preferred embodiment shown in FIG. 1, the system 1 also includes a network 102 that interconnects at least one, but preferably a plurality of application service providers (ASPs) 51, 61, 71, 81, to the document manager 40. An ASP is an entity, typically a company, that offers users (individual customers, companies, corporations, organizations, etc. . . ) access over a network, such as the Internet, to applications and related services that would otherwise have to be located on the user's local computer. For example, ASPs can provide searchable databases of legal, medical, financial, educational, scientific, or marketing documents. A system similar to the one shown in FIG. 1 is described in detail in Ser. Nos. 09/684,965, and 09/795,438 the entire contents of which are hereby incorporated by reference.

The user devices 10, 20 and 30 are remote with respect to the document manager 40. The networks 100 and 102 are preferably the Internet in this embodiment, but can also be a local area network, a wide area network, any type of network such as an intranet, an extranet, or a combination thereof. An extranet may be used to provide controlled access to external users, for example through the Internet. How the user devices 10, 20 and 30 and the document manager 40 can be connected to the Internet 100 and 102 is well-known in the art and is explained for example, in part 38 of “How Computers Work”, by Ron White, Que Corporation, pps. 340-349, September, 1999, ISBN: 0-7897-2112-0, the entire content of this book being hereby incorporated by reference. Other communications links for the networks 100 and 102, such as a virtual private network, or a wireless link, may be used as well.

The user devices 10, 20 and 30 include an image processing apparatus, such as a multi-function device, or “MFD.” An MFD can incorporate a scanner, a copy machine, a printer, a fax machine, a digital camera, other office devices, and combinations thereof. Various types of MFDs are commonly known in the art and share common features and hardware with the MFDs of the present invention. In one embodiment of the present invention, the MFD is a portable device, such as a digital camera, connectable to the Internet via wireless connection/network. Such an MFD combines digital imaging with the power of the Internet so that one can capture still, sounds or videos and share them wirelessly from various locations. The MFD can create web pages, send and receive e-mails with attachments, edit images, FTP files, surf the Internet, and send a fax. In another embodiment, the MFD is a multiple scanner, photocopier and printer, as described in more detail below with corresponding FIGS. 11-12. The MFDs 10-30 can be directly connected to the network 100. The browsers 25 (shown in FIGS. 2 and 4) of MFDs 10-30 can exchange information with the document manager 40 via the network 100, so as to benefit from a number of services provided by the document manager 40.

For example, in the embodiment shown in FIG. 1, the browser 25 (FIG. 2) of the MFD 20 can provide the document manager 40 with a request for storing at an ASP 51 a document scanned or an image processed by the MFD 20. The browser 25 can provide the document manager 40 with job information related to a job performed on a document or image by the MFD 20. For example, the browser 25 can transmit to the document manager 40 job information such as the number of pages scanned or printed, the number of documents scanned or printed, the number of digital images taken, the scanning/printing resolution (e.g., 200, 400, 600, 1200 dot per inch), the scan/print mode (Text, Gray, Scale, Photo, Text&Photo), the size of the paper for the document/image, the color selection (selected by the operator and/or automatically selected by the MFP 20), the compression ratio of the image data (e.g., fine, normal, economy), the image data format, i.e., the compression method of the image data (e.g., Bitmap, PDF, JPEG, JPEG2000). Using this job information, the document manager 40 can update a job log for that user. The document manager 40 can generate billing information based on the job performed. The browser 25 can also provide the document manager 40 with other information such as user I.D.s, passwords, the name of the person scanning or printing the document, the name of the author of the document, the date and time of the scanning or printing, the version of the document, the serial number, model name and/or location of the MFD 20.

FIG. 2 illustrates an MFD 20's browser 25 configured to exchange information between the MFD 20 and the document manager 40 according to the first embodiment of the present invention. FIG. 2 shows the software components in the MFD-document manager system; the hardware elements are not shown in FIG. 2. The document manager 40 shown in FIG. 2 includes a user interaction device 261 configured to exchange data with the browser 25 of the MFD 20 so that the user of the MFD 20 can benefit from a number of services provided by the document manager 40. The information exchanged between the browser 25 and the document manager 40 includes, but is not limited to, documents processed (e.g., scanned) by the MFD 20, documents stored at the ASPs, job information related to the job performed by the MFD 20, login information related to the identity of the user of the MFD 20, criteria for searching documents at the ASPs, requests to search documents, request to store documents, other requests related to the management of documents, e-mail addresses, fax numbers, etc.

In one embodiment, the user of the MFD 20 can access the document manager 40 by providing login information, for example by transmitting a user-name and a password, which can be verified by user interaction device 261. In this case, the browser 25 is configured to transmit that login information to the user interaction device 261 of the document manager 40. The user interaction device 261 can verify the user's authorization by comparing the login information to information stored in a storage device at the document manager 40. The user interaction 261 can also transmit to the MFD 20 a confirmation of the user's authorization. In this case, the browser 25 is configured to receive this confirmation from the document manager 40.

The browser 25 can also be configured to transmit job information to the user interaction device 261. The job information relates to the job performed by the MFD 20 and can include the scanning parameters (e.g., the scanning resolution, the compression ratio, the image data format, the color selection, the size of paper), the number of pages scanned or printed, the number of documents scanned or printed. The document manager 40 can include a charge engine 266 configured to generate billing information based on the job information. For example, the charge engine 266 can compute bills by multiplying the values of certain scanning parameters (part of the job information) by charges determined for each parameter. After computing these billable items, the charge engine 266 can transmit the billing information and/or the bills to the ASP 51. The browser 25 is configured to transmit this job information from the MFD 20 to the document manager 40. The charge engine 266 can also receive bills from the ASPs 51-81 and generate other bills to be transmitted to the MFD 20. In this case, the browser 25 is configured to receive the bills from the document manager 40 at the MFD 20.

The document management 40 can also include a search engine 271 configured to search and access ASPs 51-81 based on data, or search criteria, input from the user of the MFD 20. In this case, the browser 25 is configured to transmit the search criteria to the document manager 40. The browser 25 is also configured to receive from the document manager 40 the results of the search, e.g., documents retrieved form the ASPs. The document manager 40 can also include a format standardizing device 276 configured to standardize the formats of the documents retrieved from various ASPs and the MFD 20. For example, the format standardizing device 276 can re-format the documents so that they may be accessed using a single GUI. In this case, the browser 25 can be configured to transmit the documents from the MFD 20 to the document manager 40 with a request to standardize the documents. In another embodiment, the document manager 40 includes a consulting device 281 configured to provide the user of the MFD 20 consulting services regarding the services provided by the document manager 40. In this case, the browser 25 is configured to transmit requests for information to the document manager 40 from the MFD 20. The browser 25 is also configured to receive from the document manager 40 the requested information.

As shown in FIG. 2, the MFD 20 includes an engine control service (ECS) 200 that controls for example the scanning engine of the MFD 20. A memory control service (MCS) 205 controls access to the memory 210 of the MFD 20. An operation panel control service (OCS) 215 generates displays for the LCD of the MFD 20. For example, the OCS 215 can generate conventional menus for MFD operation and the menus shown in FIGS. 5-8. A system control service (SCS) 225 controls and/or monitors sensors within the MFD 20. For example, the SCS 225 controls the touch screen sensors, paper jam sensors and scanning operation sensors. Accordingly, the SCS 225 can manage the status of the MFD 20 based on the information from the sensors. A network control service (NCS) 220 controls communication between the browser 25 and the scan server 40. Optionally, a secure socket layer (SSL) 230 provides added security for communications between the NCS 220 and the browser 25. A command input service (CIS) 240 processes input information, e.g., from the LCD touch panel and a key pad of the MFD 20. A user of the MFD can enter information and commands using the LCD touch panel and the key pad. The CIS 240 can process such information and commands entered by a user (e.g., forwarded to the CIS 240 by the SCS 225). The CIS 240 can generate a command (e.g., a display command) based on such processing and transmit the command to other components of the MFD (e.g., to the OCS 215 to display a graphic on the LCD). The CIS 240 can also exchange information and commands with the NCS 220 for processing with the browser 25 in connection with the document manger 40.

Conventional MFDs include ECSs, MCSs, OCSs, NCSs, SCSs, and CISs, which are firmware for implementing and controlling each hardware component of the MFD. In the present invention, however, the NCS 220 is configured to communicate with the browser 25. For instance, the NCS 220 has additional capabilities for communicating using the HTTP protocol. The NCS 220 is also configured to communicate with the document manager 40 so that the NCS 220 exchanges data between the browser 25 and the document manager 40. For example, The NCS 220 can transmit to the document manager 40 a document storage request and/or a document search request and can receive from the document manager 40 storage information and/or a retrieved document.

The browser 25 includes an HTTP command processor 235 that communicates with the network control service (NCS) 220 of the MFD 20. For example, a request for a document entered by the user via the MFD keyboard, or a request for displaying information on the LCD, such as FIGS. 5-8, can be passed from the NCS 220 to the browser 25 by the HTTP command processor 235. The HTTP command processor 235 can exchange data in the HTML format with the browser's HTML parser 250, and can exchange data in the XML format with the XML parser 255. The parsers 250 and 255 can check the data from the HTTP command processor 235 for syntax, process the data for HTTP command processor 235. The present invention can include conventional parsers, which are usually part of a compiler.

The HTTP command processor 235 can be provided with a program code for implementing a specific application, such as, user authentication processing which can be implemented with the directory service of the document manager 40. The HTTP command processor 235 can process information based on definitions of the specific application. For example, the HTTP command processor 235 can process information provided by the user, such as User Name or Password, and generate an HTTP request based on this processing for the document manager 40. The HTTP command processor 235 can process information provided by the MFD components, such as job information (number of documents processed, scan/print parameters, date and time of job, user ID, etc. . . ) and generate an HTTP request based on this processing for the document manager 40. The HTTP command processor 235 can transmit such HTTP requests to the NCS 220 to be transmitted to the document manager 40.

The HTTP command processor 235 can also process information received from the document manager 40 (via the NCS 220). For example, the HTTP command processor 235 can receive an HTTP response generated by the document manager 40 which includes parameters for operating the MFD. The parameters can be stored for example in the user interaction device 261 of the document manager 40. The parameters can include a specific user ID as a result of the user authentication processing. Furthermore, the parameters can include destination computer to receive job information, destination folder on the networked computer's hard drive for the documents processed by the MFD, restrictions for the MFD functions depending on user authentication, scanning/printing job parameters for the specific user ID, such as default size of papers, scanning resolution setting, condition of the document feeder, or department code for billing the operation. The HTTP command processor 235 can process this information and generate commands to control the MFD in accordance with the information, e.g., can request the MFD to scan/print according to the job parameters for the specific user ID. As another example, the HTTP command processor 235 can generate a graphic drawing command for the LCD panel. The HTTP command processor 235 can transmit the commands to the appropriate MFD firmware (e.g., the OCS 215) so as to be executed. For example, the OCS 215 can receive the graphic drawing command and execute it by displaying a graphic (e.g., FIGS. 3-6) on the LCD panel.

FIGS. 13 and 14 show flowcharts of a method of managing documents with the MFD browser 25. More specifically, FIG. 13 shows an HTTP request handling process flow, and FIG. 14 shows an HTTP response handling process flow. Turning to FIG. 13, at step 3100 a user operates the MFD panel, for example selects a button on the MFD's LCD touch panel. At step 3150, the SCS 225 detects the panel operation, e.g. a location of the selected button, and transmits panel operation information to the CIS 240. At step 3200, the CIS 240 interprets the panel operation information and generates a command. This interpretation and generating of the command can be based on a definition described in a predetermined program code. The predetermined program code can be provided for implementing the specific application executed by the MFD 20 and the server 40. For example, the specific application may include a user authentication using the document manager 40, or scan-to-eMail services with MFD 20 and document manager 40. The predetermined program code for the specific application can be provided in an IC Card, or other medium, for the MFD.

At step 3250, the CIS 240 transmits the command to the HTTP command processor 235. At step 3300, the HTTP command processor 235 generates an HTTP requests composed in the HTML language and/or the XML language based on the command. At step 3350, the HTTP command processor 235 transmits the HTTP request to the NCS 220. Optionally, the HTTP command processor 235 transmits the HTTP request to the SSL 230, i.e., the HTTP request is sent using HTTPS protocol or Secure Sockets Layer over HTTP, based on the definition of the predetermined program code for the specific application. At step 3400, the NCS 220 transmits the HTTP request to the document manager 40.

Turning to FIG. 14, at step 4100, the document manager 40 generates an HTTP response based on the processing defined by the specific application. For example, the authentication result information can be included in the HTTP response. The document manager 40 transmits this HTTP response to the NCS 220. In this process, the HTTP response can be sent using HTTPS protocol depending on the definition of the predetermined program code for the specific application. At step 4150, the NCS 220 receives the HTTP response and transmits it to the HTTP command processor 235. At step 4200, the HTTP command processor 235 receives the HTTP response from the NCS 220 and transmits it to the HTML parser 250 and/or to the XML parser 255. At step 4300, the XML parser 255 processes the HTTP response for the HTTP command processor 235. At step 4400, the HTML parser processes the HTTP response for the HTTP command processor 235. At step 4450 the HTTP command processor 235 generates a command based on this processing, and transmits the command to one of the MFD components, e.g. the CIS 240. At step 4500, the CIS 240 generates a display request based on the command and transmits the display request to the OCS 215. At step 4600, the OCS 215 processes the display request. For example, at step 4700, the LCD panel displays graphics, such as the menus shown in FIGS.3-6.

FIG. 3 is a block diagram of a system 5 for scanning and managing documents according to another preferred embodiment of the present invention. In particular, the system 5 allows a user to process a document (e.g. scanning, capturing an image) and to e-mail and/or fax the document from the MFD. The system 5 includes a network 100 that interconnects at least one, but preferably a plurality of scanning devices 10-30, to a document manager 40. In this embodiment, the document manager 40 is a scan server 40. The network 100 preferably uses TCP/IP (Transmission Control Protocol/Intemet Protocol) because this protocol is commonly used, but other protocols are possible. The network 100 can be a local area network, a wide area network, any type of network such as an intranet, an extranet, or a combination thereof. Other communications links for the network 100, such as a virtual private network, or a wireless link, may be used as well.

As shown in FIG. 3, the scanning devices 10-30 can be MFDs. The server 40 is connected to a directory server 60 (or “address book server” or “global directory”). The directory server 60 can include information such as the names, addresses, e-mail addresses, phone/fax numbers, other types of destination information, and authorization of individuals. Other information can be included in the directory server 60. Examples of directory servers 60 compatible with the present invention include, but are not limited to, Lotus Notes®, Microsoft Exchange®, and LDAP (“Lightweight Directory Access Protocol”) enabled directory servers. LDAP is a software protocol that enables a user to locate organizations, individuals, files, devices in a network. The scan server 40 can also be connected to a network domain controller 50 that controls authentication of the MFD users.

The system 5 provides access to the users of the MFDs 10-30 of the information stored at the directory server 60 via the scan server 40. Accordingly, a user can create a document (e.g., scan, capture image) at the MFD 20, and request a search of the company's global directory stored at the directory server 60. The scan server 40 can pass the search request to the directory server 60 and can receive the search results (e.g., e-mail addresses and/or fax numbers) from the directory server 60. The scan server 40 can pass the search results to the MFD 20, which can temporarily store and display them. In a preferred embodiment, the stored search results are erased automatically from the MFD after the job of the MFD is completed, or after a time period (e.g., two minutes) that can be set by the administrator of the system. The user can select e-mail addresses and fax numbers from the displayed search results and request that the document be e-mailed and/or faxed to the selected addresses. Alternatively, the user can enter the addresses and numbers, or can select addresses and numbers from a local directory stored in the scanning devices 10-30. The local directory can be updated automatically or periodically after the directory server is updated.

The scan server 40 receives the document and the selected addresses/numbers from the MFD 20 and routes the scanned document to the appropriate server. For example, if the user requests the document to be e-mailed, the scan server 40 routes the document to an e-mail server 70. If the user requests the document to be faxed, the scan server 40 routes the document to a fax server 80. The scan server 40 can also route the document to other applications 90, which may, for example, convert a document from one format (e.g., TIFF, “Tag Image File Format”) to another (PDF, “Portable Document Format”).

In the present embodiment, the Scan Server 40 can be configured to act as an intermediate agent between a plurality of computerized services (e.g., provided by devices 50, 60, 70, 80, and 90) so that the MFDs can perform a plurality of functions in a same scanning job. The Scan Server 40 can be configured to display the plurality of services based on a request from the browser 25. The MFD can display screens prompting the entry of a plurality of parameters such as e-mail addresses, fax numbers and billing codes, on the LCD panel based on the communication between the Browser 25 and the Scan Server 40. The MFD can then transmit the document to a plurality of servers, e.g., servers 70, 80, and 90.

In a preferred embodiment, the browsers 25 of the MFDs 10-30 and the scan server 40 exchange data using the protocol HTTP (“Hypertext Transfer Protocol”) or HTTPS (HTTP over Secure Socket Layer) over the network 100. Other protocols can equivalently be used with the present invention. Preferably, the browsers 25 of the MFDs 10-30 and the scan server 40 exchange data using the format XML (“Extensible Markup Language”). Other formats, such as HTML, can equivalently be used with the present invention. In a preferred embodiment, the e-mail server 70 is incorporated into the scan server 40. E-mail server 70 can include, but is not limited to, Lotus Notes™ e-mail server, Microsoft Exchange™ e-mail server, and SMTP (“Simple Mail Transfer Protocol”) e-mail servers. In a preferred embodiment, the fax server 80 is the Captaris' RightFax server.

The system 5 provides three levels of user authentication. At a first authentication level, no user authentication is performed. Under this first level, any user can use the MFDs 10-30 to scan, copy, print, access the global directory server 60 to e-mail and fax documents.

At the second authentication level, the user is domain authenticated by the network domain controller 50. Under this second level, the user enters login information, such as a login name and a password. This login information is transmitted to the scan server 40 via the network 100 by the MFD's browser 25. The scan server 40 passes the login information to the network domain controller that confirms (or not) the user's domain authentication. The confirmation is passed to the browsers of the MFDs 10-30 via the scan server 40. If the user is domain authenticated, the user can use the MFD and its functions. In one embodiment, the system 5 can be configured so that certain functions of the MFDs 10-30, such as copying and direct e-mail and faxing (without access to the global directory server 60), be accessible to a user who is not domain authenticated. Under this embodiment, however, the system bars the non-authenticated user from using other functions, including access to the global directory server 60. Under another embodiment, the system bars the non-authenticated user from using all functions provided by the MFDs 10-30.

At the third authentication level, the user is authenticated by the directory server 60. Under this third level, the directory server 60 can control what portions (if any) of the directory, to which the user can have access. For example, employees of a particular division of the company (e.g., human resources, legal, etc. . . . ) may have access to the portion of the directory that corresponds to that division only. More sensitive information can thus be protected and accessible only by certain individuals within the company. This third authentication level can be, but need not be, in addition to the second level.

Under the second and third authentication levels, the system can create a user profile such that upon authentication, the system provides access to the user only for certain functions that correspond to the user profile. Under this embodiment, different authenticated users can have different user profiles and thus have access to different functions. The administrator can control the user profiles.

In a preferred embodiment, the scan server 40 can include a profiler that sets a specific MFD profile for a specific MFD. The administrator of the system 5 can create, change and maintain profiles via a profile screen on the scan server 40. The profile can include an identification for the MFD, such as a serial number, and various parameters (computer network-name, machine location, etc. . . . ) used to configure the exchange of information between the scan server 40 and the browsers of the MFDs 10-30. These parameters can relate to the authentication scheme used for each MFD, to the data format/protocols used, to the e-mail server 70, to the fax server 80, and/or to the directory server 60. The profile can also include the time period during which the search results from the directory server are stored at the scanning device before being erased.

FIG. 4 illustrates an MFD 20's browser 25 configured to exchange information between the MFD 20 and the scan server 40 according to a preferred embodiment of the present invention. FIG. 4 shows the software components in the MFD-server system; the hardware elements are not shown in FIG. 4. The scan server 40 shown in FIG. 4. includes an authentication device 260 configured to perform the authentication functions discussed above. The scan server 40 also includes an administration device 265 that allows the system administrator to administer the system 5. For example, the administrator of the system can access the profiler 280 via the administration device 265 to set profiles for the MFDs 10-30 connected to the scan server 40. The scan server 40 also includes a directory gateway 270 configured to communicate with the directory server 60. The scan server 40 also includes a document router 275 configured to route the documents received from the MFDs to the appropriate server 70, 80 or 90.

As shown in FIG. 4, the MFD 20 includes the same components as those shown in FIG. 2 and already discussed above. In this embodiment, however, the NCS 220 is configured to communicate with the server 40 so that the NCS 220 exchanges data between the browser 25 and the server 40. For example, The NCS 220 can transmit to the server 40 a request for an e-mail address and can receive from the server 40 a selected e-mail address, or the NCS 220 can transmit to the server 40 login information and can receive a user authentication confirmation from the server 40 (and from the directory server 60) during an authentication process.

In a preferred embodiment, the MFDs 10-30 provide interactive menus based on information inputted by the operator of the MFD, so as to allow the operator to conveniently take advantage of the services provided by the system 5. Examples of menus displayed on touch sensitive LCDs of the MFDs are shown in FIGS. 5-8. FIG. 5 illustrates a screen 300 that introduces a preferred embodiment of the present invention to the user and that provides touch sensitive buttons, for example buttons 305-325. Upon touching the button 305, the MFD displays a screen (not shown) that prompts the user to enter login information. The browser 25 receives the login information along with a request to transmit this information to the scan server 40. Once the browser 25 processes this request, the browser 25 can transmit the login information to the scan server 40.

Upon touching the button 310, the MFD displays a screen (such as screen 500 shown in FIG. 7) which permits the user to fax a document. Upon touching the button 315, the MFD displays a screen (such as screen 600 shown in FIG. 8) which permits the user to e-mail a document. Upon touching the button 320, the MFD displays a screen (such as screen 400 shown in FIG. 6) which prompts the user to enter settings for scanning a document. Upon touching the button 325, the MFD displays a screen (not shown) which displays a job log, which keeps track of previous jobs performed by the MFD. The screen 300 includes a system display portion 330 that displays system messages, such as the time and date, error messages, or instructions to the user. The screen 300 includes a main display portion 335 that displays information for the user. Screen 300 can include other display portions. The screen 300 also includes buttons 340, which permit the user to scroll through the display shown in the main display portion 335.

FIG. 6 illustrates a screen 400 with touch sensitive buttons used to set the scanning parameters. The screen 400 can include a default button 405 to request the MFD to scan the document using its default scanning parameters (e.g., 200 dpi). The default parameters may be displayed below the button 405. Upon being touched, a “Fine Scan” button 410 requests the MFD to scan the document using finer scanning parameters (e.g., 300 dpi) than the default parameters. These finer scanning parameters can be displayed below the button 410. Upon being touched, a “Super Scan” button 415 requests the MFD to scan the document using even finer scanning parameters (e.g., 400 dpi) than the fine parameters. These even finer scanning parameters can be displayed below the button 415.

The screen 400 can also include a “Create PDF” button 430 that requests, upon touching, the document to be converted to the PDF format. This conversion can take place at the MFD, at the scan server, or at a conversion server 90. In a preferred embodiment, the browser 25 transmits the document to the scan server 40 in the TIFF format along with the request to convert to the PDF format. The scan server 40 then sends the document to the conversion server 90 to be converted into the PDF format.

If the user does not want the document converted to the PDF format, the user can touch a “Keep TIFF” button 435 to request that the document be kept in the TIFF format. In this case, the browser 25 transmits the document in the TIFF format to the scan server 40 along with a request not to convert the document to another format. Alternatively, the browser 25 can transmit the document to the scan server 40 in any format and without any request. In this case, the scan server 40 can be configured to keep the document in whatever format it is received.

The user can also touch the “Scan Size” button 440 to set the size of the document to be scanned. The user can also select a single sided scan by touching the “Single-Sided” button 420, or select a double sided scan by touching the “Double-Sided” button 425. Once the user has selected all the scanning parameters, the user can save his selection by touching the “Save” button 445. Alternatively, if the user wants to return to the previous screen 300, the user can touch the “Exit” button 450.

FIGS. 7 and 8 illustrate screens 500 and 600 used to request faxing and e-mailing documents, respectively. Text (e.g., for a fax note or an e-mail message) can be entered via the LCD using a touch sensitive keyboard (not shown) displayed on the LCD. Upon touching the “Enter Fax Note” button 510, the MFD displays a screen that permits the user to enter a fax note along with the document to be faxed. The fax note can be displayed in portion 555 of the screen 500. Upon touching the “Enter Fax Number” button 520, the MFD displays a screen that permits the user to enter the fax number to which the document is to be faxed. The user can manually enter the fax number if the user already knows the fax number. If the user does not already know the fax number, the user can look it up in the global directory, as discussed next.

Upon touching the “Lookup Fax Number” button 525, the MFD displays a screen that prompts the user to enter the name(s) of a recipient(s), or the name of a group of recipients (e.g., “marketing,” “management,” “security,” “legal department,” “blue division,” “softball team,” etc. . . ). Search criteria other than names can be used. The MFD can send the names or other search criteria to the scan server 40, which passes the information to the directory server 60. The directory server 60 then returns the fax numbers for the names entered by the user to the scan server 40, which passes the fax numbers to the MFD for displaying on the portion 545 of the screen 500. The display portions 550 can be touched to select (e.g. by highlighting) fax numbers listed on the portion 545. The selected fax numbers can be removed from the recipients' list by touching the “Remove Fax Number” button 530. Upon touching the “OK” button 535, the information received via the screen 500 can be processed by the MFD to fax the document. The user can return to the previous screen by touching the “Cancel” button 540. Upon touching the “Billing Code” button 515, the MFD displays a bill management screen (not shown) to receive billing information. For example, the bill management screen would prompt the user to enter a department code representing the department to which the user belongs. With this feature, the MFD can either locally process the billing information and/or transmit the billing information to the server 40 for centralized processing.

Turning to the screen 600 illustrated in FIG. 8, upon touching the “Enter Subject” button 605, the MFD displays a screen that permits the user to enter a subject for the document to be e-mailed. This subject can be displayed in portion 655 of the screen 600. Upon touching the “Enter E-mail Message” button 610, the MFD displays a screen that permits the user to enter an e-mail message along with the document to be e-mailed. Upon touching the “Document Name” button 615, the MFD displays a screen that permits the user to enter the name of the document to be e-mailed. Upon touching the “Enter E-mail Address” button 620, the MFD displays a screen that permits the user to enter the e-mail address to which the document is to be e-mailed. The user can manually enter the e-mail address if the user already knows the e-mail address. If the user does not already know the e-mail address, the user can look it up in the global directory, as discussed next.

Upon touching the “Lookup E-mail Address” button 625, the MFD displays a screen that prompts the user to enter the name(s) of a recipient(s), or the name of a group of recipients (e.g., “marketing,” “management,” “security,” “legal department,” “blue division,” “softball team,” etc. . . . ). Search criteria other than names can be used. The browser 25 can receive the entered names or other search criteria and transmit them to the scan server 40, which passes the information to the directory server 60. The directory server 60 then returns the e-mail addresses for the names entered by the user to the scan server 40, which passes the e-mail addresses to the MFD 20. The browser 25 receives the e-mail addresses from the scan server 40 and can display them on the portion 645 of the screen 600. The display portions 650 can be touched to select (e.g. by highlighting) the e-mail addresses listed on the portion 645. The selected e-mail addresses can be removed from the recipients' list by touching the “Remove E-mail Address” button 630. Upon touching the “OK” button 635, the information received via the screen 600 can be received and processed by the browser 25. In particular, the browser 25 can transmit to the scan server 40 the document to be e-mailed along with a request to e-mail the document to the e-mail addresses selected or entered by the user. The scan server 40 processes this information and routes the document to the e-mail server for e-mailing. The user can return to the previous screen by touching the “Cancel” button 640.

FIG. 9 illustrates a method of authenticating a user according to one embodiment of the present invention as performed by the MFDs 10-30 and its browser 25. At step 705, the MFD inquires whether a command is received from the user to display a login screen. For example, the user can press a login button on the LCD of the MFD 20, such as the “Log in” button 305 of screen 300 shown in FIG. 3. At step 710, the MFD 20 displays the login screen if the command is received. At step 715, the browser 25 inquires whether the login information is received from the user. For example, the browser 25 can inquire whether the user entered a user name, a password, and a domain name. Once the browser 25 has received the login information, the browser 25 transmits the login information to the scan server 40 at step 720. The scan server 40 then sends the login information to the network domain controller 50. The domain controller 50 verifies the login information and sends a authentication confirmation to the scan server 40 that forwards the confirmation to the MFD 20. At step 725, the browser 25 inquires whether the authentication confirmation is received from the scan server 40. Once the MFD 20 receives the user authentication, the MFD 20 downloads from the scan server 40 a user's home page for display at step 730. For example, the user's home page can include a start page, such as the one shown in FIG. 3. The user home page can be a kind of default (portal) page initially displayed after authentication. In the present invention, this home page can be generated based on the result of user authentication. In a preferred embodiment, the user home page can be provided with a “Help” button, and/or a “About” button to provide instruction and information for using system of the present invention.

FIG. 10 illustrates a method of accessing the global directory according to one embodiment of the present invention, as performed by the MFD 20 and its browser 25. The global directory can be accessed for the purpose of performing a search, such as a fax number search and/or an e-mail address search. At step 805, the MFD 20 inquires whether the user requested to search the global directory. For example, the user can request such a search by pressing the lookup buttons 525 and 625 shown in FIGS. 7-8. If such a search is requested, the MFD 20 displays a screen at step 810 that prompts the user to enter a search string, for example a string of at least two characters. At step 815, the browser 25 inquires whether the search string has been entered. Once the browser 25 has received the search string, the browser 25 transmits the search string to the scan server 40 at step 820. The scan server 40 forwards the search string to the directory server 60, which performs the search and transmits the search results to the scan server 40. The scan server 40 transmits the search results to the MFD 20. At step 825, the MFD 20 inquires whether the search results have been received from the scan server 40. Once the browser 25 has received the search results, the browser can display the search results on the display of the NFD 20 at step 830.

FIGS. 11-12 illustrate an example of the MFD 20, which includes a central processing unit (CPU) 931, and various elements connected to the CPU 931 by an internal bus 932. The CPU 931 services multiple tasks while monitoring the state of the MFD 20. In particular, the CPU 931 performs a number of program instructions for the browser 25. The elements connected to the CPU 931 include a read only memory (ROM) 933, a random access memory (RAM) 934, a hard disk drive (HDD) 935, a floppy disk drive (FDD) 936 capable of receiving a floppy disk 907, a communication interface (I/F) 938, and a modem unit 939. In addition, a control panel 937, a scanner unit 940, a printer unit 941, and an image processing device 942 can be connected to the CPU 931 by the bus 932. Both the I/F 938 and the modem unit 939 are connected to a communication network 100.

In a preferred embodiment, the program code instructions for the MFD 20 and for the browser 25 are stored on the HDD 935 via an IC card. Advantageously, an IC card can be used to upgrade the firmware for the MFD. Alternatively, the program code instructions can be stored on the floppy 907 so that the program code instructions may be read by the FDD 936, transferred to the RAM 934 and executed by the CPU 931 to carry out the instructions. These instructions can be the instructions to perform the MFD's functions and the browser 25's functions described above. In particular, these instructions permit the browser 25 to interact with the document manger 40 and permit the MFD 20 to control its control panel 937 and its image processing units of the MFD 20.

During a start-up of the MFD 20, the program code instructions may be read by the CPU 931, transferred to the RAM and executed by the CPU 931. Alternatively, the program code instructions may be loaded to the ROM 933. It is therefore understood that in the present invention any of the floppy disk 907, the HHD 935, the RAM 934, and the ROM 933 correspond to a computer readable storage medium capable of storing program code instructions. Other devices and medium that can store the instructions according to the present invention include for example magnetic disks, optical disks including DVDs, magneto-optical disks such as MOS, and semiconductor memory cards such as PC cards.

In a preferred embodiment, the control panel 937 includes a display screen that displays information allowing the user of the MFD 20 to interact with the document manager 40,such as screens 300-600 shown in FIGS. 5-8. The display screen can be a liquid crystal display (LCD), a plasma display device, or a cathode ray tube (CRT) display. The display screen does not have to be integral with, or embedded in, the control panel 937, but may simply be coupled to the control panel 937 by either a wire or a wireless connection. The control panel 937 may include keys for inputting information or requesting various operations. Alternatively, the control panel 937 and the display screen may be operated by a keyboard, a mouse, a remote control, touching the display screen, voice recognition, or eye-movement tracking, or a combination thereof.

The mechanisms and processes set forth in the present description may be implemented using a conventional general purpose microprocessor(s) programmed according to the teachings of the present specification, as will be appreciated to those skilled in the relevant arts. Appropriate software coding can readily be prepared by skilled programmers based on the teachings of the present disclosure, as will also be apparent to those skilled in the software art. In particular, the computer program product for the browser functions, and for authenticating, routing, and managing scanned documents according to the present invention can be written in a number of computer languages including but not limited to C, C⁺⁺, Fortran, and Basic, as would be recognized by those of ordinary skill in the art. The invention may also be implemented by the preparation of applications specific integrated circuits or by interconnecting an appropriate network of conventional component circuits, as will be readily apparent to those skilled in the art.

The present invention thus also includes a computer-based product that may be hosted on a storage medium and include instructions that can be used to program a computer to perform the browser functions and the document management functions discussed above in accordance with the present invention. This storage medium can include, but is not limited to, any type of disk including floppy disks, optical disks, CD-ROM, magneto-optical disks, ROMs, RAMs, EPROMs, EEPROMs, Flash Memory, Magnetic or Optical Cards, or any type of media suitable for storing electronic instructions.

Additional Benefits of the Present Invention

Historically, business applications ran on mainframe computers and users executed operations from terminal consoles by sending instruction commands. The terminal consoles had no computing power other than displaying data stream sent back from the mainframe computer which ran the actual applications. As LAN (Local Area Network) became available, the Client - Server architecture was introduced. The Client—Server architecture utilizes the client computer's computing power to offload the mainframe from data processing, resulting in a more efficient use of the resources and better overall performance.

This Client-Server technology introduced a new problem however. Each and every computer needs to have an application program installed. Installation upgrades, and maintenance of the client require a lot of time and human support, which increase operation cost. Furthermore, this approach lacks flexibility because different versions of applications on clients and servers should match.

Once introduced, the web browser was well accepted because it not only solves the problems of the Client-Server architecture but it also allows the user to maintain the benefit of distributed computing. Specifically, the web browser eliminates the need for client program maintenance because application programs and/or web pages are loaded dynamically at the time the user accesses the web site. The user is guaranteed to have the latest version of the application. As a result, PCs no longer need to have application programs installed manually and permanently on their local hard disk. This is why a PC web browser is sometimes referred to as “thin client technology;” it is free from relatively bulky application programs.

The MFD browser according to the present invention provides the benefits of thin client technology to MFDs because it does not need manual program installation or program upgrade but still guarantees the latest and/or only appropriate software loaded from a web site. Once the MFD browser is incorporated in the MFD, a web server can identify the capabilities of the MFD and dynamically download and run selected programs by a pre-defined criterion. This criterion can be used to run different types of applications by department, e.g. a patent search and a print program for a legal department or a resume management application for a human resources department. Advantageously, the present invention can be incorporated into the system and method for managing documents disclosed in co-pending Ser. No. 09/795,438, the entire content of which is hereby incorporated by reference.

Obviously, numerous additional modifications and variations of the present invention are possible in light of the above teachings. It is therefore to be understood that within the scope of the appended claims the present invention may be practiced otherwise than as specifically described herein. 

1. A scan server, comprising: an authentication device configured to perform authentication; an administration device configured to manage a plurality of profiles, each profile corresponding to one of a plurality of multi-function devices connected to the scan sever and indicating an authentication scheme; a directory gateway configured to communicate with a directory server connected to the scan server; and a document router configured to route documents received from each of the plurality of multi-functional devices to an appropriate destination.
 2. The scan server of claim 1, further comprising: a first communication interface configured to receive login information from one of the plurality of multi-function devices connected to the scan server.
 3. The scan server of claim 2, wherein: the login information comprises a login name and a password.
 4. The scan server of claim 2, wherein: the authentication device is configured to determine an authentication scheme corresponding to the received login information.
 5. The scan server of claim 2, further comprising: a second communication interface configured to send the login information to a network domain controller remotely connected to the scan server; and the second interface configured to receive, from the network domain controller, a result of an authentication process at the network domain controller.
 6. The scan server of claim 2, further comprising: a second communication interface configured to send the login information to the directory server connected to the scan server; and the second interface configured to receive, from the directory server, a result of an authentication process at the directory server.
 7. A method of managing profiles at a scan server, comprising: storing, at the scan server, a plurality of profiles, each profile corresponding to one of a plurality of multi-function devices connected to the scan sever and indicating an authentication scheme; receiving login information from one of the plurality of multi-function devices connected to the scan server; and retrieving an authentication scheme corresponding to the login information by accessing a profile corresponding to the received login information.
 8. The method of claim 7, wherein: the login information comprises a login name and a password.
 9. The method of claim 7, further comprising: transmitting the login information to a network domain controller remotely connected to the scan server; and receiving, from the network domain controller, a result of an authentication process at the network domain controller.
 10. The method of claim 7, further comprising: transmitting the login information to the directory server connected to the scan server; and receiving, from the directory server, a result of an authentication process at the directory server.
 11. A scan server, comprising: means for storing, at the scan server, a plurality of profiles, each profile corresponding to one of a plurality of multi-function devices connected to the scan sever and indicating an authentication scheme; means for receiving login information from one of the plurality of multi-function devices connected to the scan server; and means for retrieving an authentication scheme corresponding to the login information by accessing a profile corresponding to the received login information.
 12. The scan server of claim 11, wherein: the login information comprises a login name and a password.
 13. The scan server of claim 11, further comprising: means for transmitting the login information to a network domain controller remotely connected to the scan server; and means for receiving, from the network domain controller, a result of an authentication process at the network domain controller.
 14. The scan server of claim 11, further comprising: means for transmitting the login information to the directory server connected to the scan server; and means for receiving, from the directory server, a result of an authentication process at the directory server.
 15. A recording medium including computer program instructions which cause a computer to execute a method of managing profiles, comprising: storing, at the scan server, a plurality of profiles, each profile corresponding to one of a plurality of multi-function devices connected to the scan sever and indicating an authentication scheme; receiving login information from one of the plurality of multi-function devices connected to the scan server; and retrieving an authentication scheme corresponding to the login information by accessing a profile corresponding to the received login information. 